#ifndef __FLATPAKREPAIR__H__
#define __FLATPAKREPAIR__H__

#include "FlatpakBase.h"

class Flatpak::Repair : public Flatpak::Base {

    public:
        initCommand(Repair, "repair");

        Repair(const Repair &) = default;
        Repair(Repair &&) = default;
        Repair &operator=(const Repair &) = default;
        Repair &operator=(Repair &&) = default;

        // --user/--system
        UserSystem(Repair)

        // --dry-run
        Repair dryRun(){
            args << "--dry-run";
            return *this;
        }

        // --reinstall-all
        Repair reinstallAll() {
            args << "--reinstall-all";
            return *this;
        }

        // --ostree-verbose
        OstreeVerbose(Repair)

        QString run() {
            Base::run();

            return FlatpakCommand::RunCommand(command, args);
        }
};

#endif  //!__FLATPAKREPAIR__H__

/****************************************************************
Usage:
  flatpak repair [OPTION…] - Repair a flatpak installation

Help Options:
  -h, --help              Show help options

Application Options:
  --user                  Work on the user installation
  --system                Work on the system-wide installation (default)
  --installation=NAME     Work on a non-default system-wide installation
  --dry-run               Don't make any changes
  --reinstall-all         Reinstall all refs
  -v, --verbose           Show debug information, -vv for more detail
  --ostree-verbose        Show OSTree debug information
****************************************************************/

